<?php
/**
 * Created by PhpStorm.
 * User: zhangrxiang
 * Date: 17-1-16
 * Time: 下午5:47
 */

//String 字符串
//一个字符串 string 就是由一系列的字符组成，
//其中每个字符等同于一个字节。
//这意味着 PHP 只能支持 256 的字符集，因此不支持 Unicode 。

//一个字符串可以用 4 种方式表达：
//单引号
//双引号
//heredoc 语法结构
//nowdoc 语法结构（自 PHP 5.3.0 起）

echo 'this is a simple string'.PHP_EOL;

// 可以录入多行
echo 'You can also have embedded newlines in 
strings this way as it is
okay to do'.PHP_EOL;

// 输出： Arnold once said: "I'll be back"
echo 'Arnold once said: "I\'ll be back"'.PHP_EOL;

// 输出： You deleted C:\*.*?
echo 'You deleted C:\\*.*?'.PHP_EOL;

// 输出： You deleted C:\*.*?
echo 'You deleted C:\*.*?'.PHP_EOL;

// 输出： This will not expand: \n a newline
echo 'This will not expand: \n a newline'.PHP_EOL;

// 输出： Variables do not $expand $either
echo 'Variables do not $expand $either'.PHP_EOL;

//\n	换行（ASCII 字符集中的 LF 或 0x0A (10)）
//\r	回车（ASCII 字符集中的 CR 或 0x0D (13)）
//\t	水平制表符（ASCII 字符集中的 HT 或 0x09 (9)）
//\v	垂直制表符（ASCII 字符集中的 VT 或 0x0B (11)）（自 PHP 5.2.5 起）
//\e	Escape（ASCII 字符集中的 ESC 或 0x1B (27)）（自 PHP 5.4.0 起）
//\f	换页（ASCII 字符集中的 FF 或 0x0C (12)）（自 PHP 5.2.5 起）
//\\	反斜线
//\$	美元标记
//\"	双引号
//\[0-7]{1,3}	符合该正则表达式序列的是一个以八进制方式来表达的字符
//\x[0-9A-Fa-f]{1,2}	符合该正则表达式序列的是一个以十六进制方式来表达的字符

//Heredoc 结构

$s = "zing";
$str = <<<BEGIN
hello world
{$s}
hello world
BEGIN;

echo $str.PHP_EOL;

//Nowdoc 结构  单引号括起
$nowdoc = <<<'WOCAO'
{$str}
$str
hello world
WOCAO;
echo $nowdoc.PHP_EOL;


// 显示所有错误
error_reporting(E_ALL);

$great = 'fantastic';

// 无效，输出: This is { fantastic}
echo "This is { $great}";

// 有效，输出： This is fantastic
echo "This is {$great}";
echo "This is ${great}";


$foo = 1 + "10.5";                // $foo is float (11.5)
$foo = 1 + "-1.3e3";              // $foo is float (-1299)
$foo = 1 + "bob-1.3e3";           // $foo is integer (1)
$foo = 1 + "bob3";                // $foo is integer (1)
$foo = 1 + "10 Small Pigs";       // $foo is integer (11)
$foo = 4 + "10.2 Little Piggies"; // $foo is float (14.2)
$foo = "10.0 pigs " + 1;          // $foo is float (11)
$foo = "10.0 pigs " + 1.0;        // $foo is float (11)
